home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nibble Magazine
/
nib09.dsk
/
INPUT$ LOWER CASE.bas
< prev
next >
Wrap
BASIC Source File
|
2023-02-26
|
2KB
|
28 lines
1 REM **********************
2 REM * INPUT$ LOWER CASE *
3 REM * BY W.J. CHEESEMAN *
4 REM * COPYRIGHT (C) 1982 *
5 REM * BY MICRO-SPARC INC *
6 REM * LINCOLN, MA. 01773 *
7 REM **********************
10 H = PEEK(36) +1:V = PEEK(37) +1:L$ = "":R = 0:W = 0:E = 0:L = 256 -H: GOTO 140
20 GET A$: IF A$ > CHR$(31) GOTO 160
30 IF A$ = CHR$(11) THEN A$ = CHR$(91): GOTO 160
40 IF A$ = CHR$(13) THEN FOR K = 1 TO LEN(R$): PRINT " ";: NEXT K: GOSUB 210: VTAB V: HTAB H:X = FRE(0): RETURN
50 IF A$ = CHR$(8) AND L$ >"" THEN H = H -1:R$ = RIGHT$(L$,1) +R$:L$ = MID$ (L$,1, LEN(L$) -1)
60 IF A$ = CHR$(21) AND R$ >"" THEN H = H +1:L$ = L$ + LEFT$(R$,1):R$ = MID$ (R$,2)
70 IF A$ = CHR$(24) THEN H = H - LEN(L$):R$ = L$ +R$:L$ = ""
80 IF A$ = CHR$(3) THEN H = H + LEN(R$):L$ = L$ +R$:R$ = ""
90 IF A$ = CHR$(23) THEN R = 1:W = 1:E = 0
100 IF A$ = CHR$(5) AND R THEN E = NOT E
110 IF A$ = CHR$(5) AND NOT R THEN R = 1
120 IF A$ = CHR$(18) AND NOT R THEN R = 1:W = 0:E = 1
130 IF A$ = CHR$(20) THEN R = 0:W = 0:E = 0: GOSUB 210
140 IF R THEN VTAB 24: HTAB 36: INVERSE : PRINT "CAPS";: NORMAL
150 VTAB V: HTAB H: GOTO 20
160 IF LEN(L$) >L -8 THEN PRINT CHR$(7);: IF LEN(L$) + LEN(A$) = L THEN PRINT CHR$(7);: GOTO 20
170 IF R AND (W OR E) AND A$ > CHR$(64) AND A$ < CHR$(91) THEN INVERSE
180 PRINT A$;: NORMAL
190 IF R AND NOT W AND NOT E AND A$ > CHR$(64) AND A$ < CHR$(91) THEN A$ = CHR$( ASC(A$) +32)
200 W = 0:H = H +1:L$ = L$ +A$:R$ = MID$ (R$,2): GOTO 20
210 VTAB 24: HTAB 36: CALL -868: RETURN